﻿<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
	<CodeSnippet Format="1.0.0">
		<Header>
			<Title>initialize</Title>
			<Author>zeroflag</Author>
			<Description></Description>
			<HelpUrl></HelpUrl>
			<SnippetType>SurroundsWith/Expansion</SnippetType>
			<Shortcut>#inil</Shortcut>
			<Keywords>
				<Keyword>initializeList</Keyword>
				<Keyword>initList</Keyword>
			</Keywords>
		</Header>
		<Snippet>
			<References />
			<Imports>
				<Import>
					<Namespace>System.Collections.ObjectModel</Namespace>
				</Import>
			</Imports>
			<Declarations>
				<Literal Editable="true" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
					<ID>Name</ID>
					<Type></Type>
					<ToolTip></ToolTip>
					<Default>Value</Default>
					<Function></Function>
				</Literal>
				<Object Editable="true" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
					<ID>ListType</ID>
					<Type></Type>
					<ToolTip></ToolTip>
					<Default>ObservableCollection</Default>
					<Function></Function>
				</Object>
				<Object Editable="true" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
					<ID>Type</ID>
					<Type></Type>
					<ToolTip></ToolTip>
					<Default>object</Default>
					<Function></Function>
				</Object>
				<Literal Editable="true" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
					<ID>Documentation</ID>
					<Type></Type>
					<ToolTip></ToolTip>
					<Default>//TODO: Add documentation</Default>
					<Function></Function>
				</Literal>
				<!--
				<Literal Editable="true" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
					<ID>Initialization</ID>
					<Type></Type>
					<ToolTip></ToolTip>
					<Default>//TODO: Initialize...</Default>
					<Function></Function>
				</Literal>
				-->
			</Declarations>
			<Code Language="CSharp" Delimiter="$">
				<![CDATA[
private $ListType$<$Type$> _$Name$;

/// <summary>
/// $Documentation$
/// </summary>
public $ListType$<$Type$> $Name$
{
get
{
if (_$Name$ == null)
{
lock(this)
{
if (_$Name$ == null)
{
var list = new $ListType$<$Type$>{$selected$$end$};
_$Name$ = list;
}
}
}
return _$Name$;
}
}
]]>
			</Code>
		</Snippet>
	</CodeSnippet>
</CodeSnippets>